


Heartburn

by shipsandglitter



Category: Andi Mack (TV)
Genre: Angst, Angst with a Happy Ending, But it gets better I swear, Cyrus.. does not have a good time at first, First Kiss, Fluff, Getting Together, Idiots in Love, M/M, Miscommunication
Language: English
Status: Completed
Published: 2019-06-25
Updated: 2019-06-25
Packaged: 2020-05-19 18:43:30
Rating: General Audiences
Warnings: No Archive Warnings Apply
Chapters: 1
Words: 3,832
Publisher: archiveofourown.org
Story URL: https://archiveofourown.org/works/19362379
Author URL: https://archiveofourown.org/users/shipsandglitter/pseuds/shipsandglitter
Summary: He knew it.He knew that TJ was straight.He knew that TJ would never like him that way.He knew that his feelings for cute athletes with sweet smiles and nice eyes would never be reciprocated.So why did the confirmation hurt so much?~A.k.a Cyrus overhears a conversation between Kira and TJ about him. Drama ensues.[post 3x15, mostly canon compliant]





	Heartburn

**Author's Note:**

> Hello! Can you tell that I'm done with exams and have free-time for the first time in a while?
> 
> [Title based on the song 'Heartburn' by Wafia because it has major post 3x15 tyrus angsty vibes and so does this fic]

“Are you sure this’ll work, Andi?” asked Cyrus, frowning slightly as his bracelet.

The girl flashed him a reassuring smile, giving him a pat on a shoulder as she walked past and began busying herself with putting away the supplies they’d used. “TJ will love it, trust me. If he doesn’t, then he has a  _very_  bad taste in bracelets.” 

Cyrus sighed, leaning back against the confines of the wooden chair. He’d spent that Saturday morning at Andi Shack making a bracelet for TJ after some serious convincing from Andi. Truthfully, he was still somewhat scarred from the whole shirt fiasco, but the girl had insisted this would be more personal. 

Andi turned around again, her smile fading the moment her eyes landed on him. “Hey, don’t doubt yourself, okay? He still cares about you, even if he’s hanging out with Kira.” 

Cyrus bowed his head. Doubting himself was something he’d become particularly adept at, but somehow, the more he hung out with TJ the less his thoughts seemed to take that direction. Lately, he’d been feeling invisible to the boy, and his mind had no problem with reminding him about it endlessly.

“You don’t think it’s lame?” he asked, voice soft. 

A frown appeared on Andi’s face at that. She paused in her actions and moved back over to Cyrus, holding out her hands to him. He looked up at her with a hesitant smile, taking them and allowing himself to be pulled up from his chair. 

“Cyrus. TJ isn’t like that, okay? He’ll never think you’re lame, no matter what. Trust me.” 

Maybe it was the unwavering way Andi was looking at him, or how confident the words seemed, but Cyrus found himself nodding. 

“Okay,” he agreed, smile widening when the girl pulled him in for a tight hug. 

“Thanks,” he added in a whisper, and Andi gave him another pat on the shoulder as they separated. 

“No problem. Now - go get your man!” 

Cyrus laughed at that, shaking his head as he made his way over to the door. 

“He’s not my man!” he called over his shoulder as he stepped out into the garden. Andi threw him a disbelieving look and returned to stacking her shelves. 

“Keep telling yourself that!” 

Cyrus just rolled his eyes. The cool morning had given way to a warm, even  _hot_ , afternoon. The sky was clear and there was sunlight beaming down on him. He found himself regretting his choice to wear a black shirt, but he pushed the thought aside and concentrated on making his way to the park, _without_  somehow managing to talk himself out of giving TJ the bracelet.

The walk was a relatively quick one, and by the time he could see the familiar swingset in the distance, he was already beginning to feel nervous. His stomach was tying itself into knots, and he came to an abrupt stop when he spotted TJ there. Alone. 

Cyrus took in a deep breath, then another, before squaring his shoulders and continuing on his way, approaching the park. The shadows cast down onto him by the trees made the heat somewhat more bearable, and soon enough he found himself in almost the exact same position he was before, standing by the park bench near the swings.

He looked over to the swingset, and when his eyes fell on who had joined TJ his heart sank. 

 _This was a dumb idea anyway,_ he thought to himself, rooted to the spot as he watched Kira speak to TJ. It all seemed uncomfortably familiar, except this time, TJ looked almost... exasperated. Like he hadn’t counted on Kira being there. He was sat on a swing, looking over at the girl with a slight frown on his face as she spoke. 

Cyrus considered just walking away again, but curiosity got the better of him and he began to slowly make his way over, as light on his feet as he possibly could be to avoid any loud leaf-crunching. He reached the tree he had watched the pair from last time, feeling slightly guilty about eavesdropping, but not enough to stop. 

“Why don’t you wanna take me to Andi’s party?” 

Cyrus inhaled sharply, heart beginning to race as he watched the scene unfold. TJ bowed his head slightly, seemingly unable to meet the girl’s eye. 

“I um...I do! It’s just...”

Kira folded her arms, looking scarily as though she  _knew_  what TJ was trying to say _._

“Just  _what_? We’re friends, aren’t we?”

Cyrus may have been seeing things, but he swore he saw TJ wince at the words. He felt his own face fall at the sight. A light gust of breeze rustled the tree leaves above him, and he found himself hurriedly hiding behind the tree trunk as Kira began glancing around. 

TJ finally spoke. “We _are_ friends, it’s just...”

Kira let out an impatient huff. “Just what?” 

Silence fell for a moment. Cyrus held his breath, shoulders tense as he awaited TJ’s response. 

“I was thinking of taking someone else,” he rushed out, “...potentially.” 

Cyrus peered around the tree trunk to see TJ standing up now, taking a step towards the girl. Kira let out a frustrated sigh, gaze lowering to the ground for a moment.

“Who?” she demanded, “and why  _them_  over  _me?_ ” 

TJ fell silent. He couldn’t seem to bring himself to answer, and Kira nodded slowly after a few seconds, clearly expecting the lack of response. 

Cyrus had the brief, hopeful thought that maybe, just  _maybe_ , the person TJ wanted to take was him. He brushed it away as quickly as it had appeared. 

Kira let out another sigh, except this time she sounded  _sad_  more than anything. Cyrus found himself frowning. The girl was clearly desperate to be TJ’s first choice, and a part of him understood why. The dull ache that came with feeling unwanted was one he had become familiar with over the past few years, and it wasn’t one he ever enjoyed. 

TJ’s hands were fidgeting nervously now as he thought of what to say. He obviously came up blank, because Kira spoke again. 

“You don’t have to say it anyway - I know who it is.” 

Cyrus’ heart skipped a beat. TJ was looking anywhere but Kira now.

“It’s Cyrus. Isn’t it?” 

He held his breath as he waited for the boy to respond, and eventually, he gave her a small nod. 

_Holy crap. TJ wanted to go with him._

Kira shook her head, laughing bitterly as she took a step back.

“I’m really sorry - it’s just - we’re good friends, and I thought it’d be a good chance to hang out with him,” TJ explained, “we can go to any other party you want together.” 

Hurt flashed across Kira’s face, before being replaced with something else. Something Cyrus could recognise well at this point.  _Anger._

“This whole time, you’ve wanted to be with him. Haven’t you?” 

“No! I-“

“You don’t have to lie, TJ. I  _know_  you like him.”

Cyrus gasped audibly, eyes widened as he hid back behind the tree and tried to calm his racing heart down.  _Had she really just said that?_

TJ seemed to be getting more and more desperate with each word that left his mouth. “As - as a friend? Yeah, sure! I don’t know why you’d imply-"

“I’ve seen the way you look at him, TJ! You  _like_  him! And you  _obviously_  prefer him to me! Its the only reason you did the damn costume with me in the first place - you were afraid you’d look-“ 

“I wasn’t afraid of anything! Look - Kira - I  _don’t_  prefer him to you, okay? Let’s just drop this. I’ll go to whatever party you wanna go to.” 

TJ turned around and made his way back over to the swings, but he stopped dead in his tracks when Kira spoke up again. The girl’s anger had given way to seeming defeat, and Cyrus felt a guilty pang in his chest as he watched on.

“TJ. Just admit it. You li-“

The boy whirled back around. “I don’t like him that way, okay?!” 

Silence. 

After all these years, Cyrus had always wondered how people in books could physically feel their  _‘heart shatter.’_  Sure, he’d felt sad before, but nothing could’ve prepared him for the blind-siding hurt that hit him like a tonne of bricks after hearing those words. 

He knew now how it felt to have his heart shatter. Just another thing TJ had taught him, he supposed. 

Cyrus couldn’t care less about how much noise he was making now, his vision blurred slightly by tears as he turned around and sprinted off in the opposite direction, one thought repeating over and over in his head. 

_He knew it._

He knew that TJ was straight.

He knew that TJ would never like him that way. 

He knew that his feelings for cute athletes with sweet smiles and nice eyes would never be reciprocated. 

So why did the confirmation hurt so much? 

Why did it hurt to be made aware of something he’d known all along? 

He’d never realised the extent to which he’d unknowingly clung onto the illusion that maybe this time it would be different. TJ was ridiculously nice after all, he never judged him, and he always seemed genuinely excited to hang out.

For a stupid, fleeting moment, he had allowed himself to believe that TJ liked him too. That he laid awake at night thinking about him, that his heart raced just as much as Cyrus’ did whenever they hugged.

But he was just another friend to TJ. And Cyrus had fallen all over again, like an idiot, for someone who would never like him back.

Cyrus thought he could faintly hear someone calling his name in the distance, but his head was spinning at that point and he had no intention of slowing down as he reached the edge of the park. Trees were blurring around him, and his legs were already beginning to burn from running, but he didn’t dare stop until he was certain that TJ, or anyone else, couldn’t catch up to him.

He collapsed down onto his bed about ten minutes later, finally allowing himself to dissolve into tears. 

The rainbow bracelet was left discarded on his desk.

 

~ 

 

_[34 new notifications]_

 

Cyrus squinted down at his screen the following morning, eyes bleary as he slowly sat up and looked towards the window. Sun was pouring in through the cracks in his blinds, and he could only assume that all of his crying had somehow managed to knock him out for the night.  

He took a moment to compose himself, running a hand through his hair. The pain of yesterday hit him all at once as he brought up TJ’s contact, letting out a heavy sigh. Scanning over the messages, they seemed to get more and more desperate as time passed. 

Cyrus bit his lip at the first one. 

 

_ 1:23 pm _

 

 **TJ:** Hey, I’m sorry you overheard my conversation with Kira, I swear I really didn’t invite her 

 

_ 1:24pm _

 

 **TJ:** I wanted to hang out with you 

 

_ 2:18 pm  _

 

 **TJ:** Call me when you can, okay? 

 

_ 4:56pm _

 

 **TJ:** Okay, I’m getting kind of worried now, are you okay?

 

_ 4:59pm _

 

 **TJ:** Is this about what Kira said? I’m sorry, I really don’t know why she was there 

 

_ 5:28pm _

 

 **TJ:**  Please just send something so I know you’re okay 

 

 **TJ:**  An emoji maybe? Or a comma? 

 

_ 6:25pm _

 

 **TJ:** I’m coming over, okay? Tell me if you don’t want me to 

 

_ 6:46pm  _

 

 **TJ:** Your mom said you were asleep. Idk if that’s true, but text me when you can 

 

 _12:13am_  

 

 **TJ:**  I’m sorry. 

 

 **TJ:** I didn’t mean to mess things up between us

 

 **TJ:**  I don’t know what to do anymore

 

Cyrus could feel his eyes stinging with tears as he put his phone down, pausing for a moment to take everything in. TJ thought he was upset by Kira’s suggestions in itself, rather than his reaction to it, and Cyrus honestly would’ve preferred that the ground swallow him whole than have to tell him the real season he ran away. 

Now that his sadness had given way to a dull feeling inside his chest, constantly reminding him of how unwanted he was, Cyrus couldn’t even sum up the energy to cry. He just let his head drop back against the pillow and let out a heavy sigh. 

When his dad knocked gently on his door, asking if he could do anything, Cyrus looked towards his desk. 

“Yeah,” he responded softly, eyes squeezing shut. “Could you throw away that bracelet, please?” 

For a moment he looked as though he wanted to say something, but he ended up nodding and moving forward, collecting the bracelet. 

“Sure you’re okay, bud?” 

Cyrus smiled. “I’m fine. Just tired.”

His dad nodded again, pausing by the doorway for a moment. “I’ll bring up some water, okay?” 

With that, he was gone for the time being, and Cyrus couldn’t seem to keep his eyes off the spot where his ‘not-so-scary-basketball-guy’ bracelet for TJ had been. 

 

~

 

 **Dad <3:**  _Hey Cyrus,_  

_I’m on my afternoon coffee break and I just thought I’d tell you that I put that bracelet in your bag instead of throwing it away. It seemed important, but if you really don’t want it, you can get rid of it when you get home._

_Love, Dad_

 

Cyrus stared down at the message for a few long moments, swallowing the sudden lump that had appeared in his throat. He was so caught up in trying to decipher what his dad had meant by ‘important,’ that he missed about half of what Buffy was saying.

When the girl pointedly cleared her throat he jolted slightly, shoving his phone back in his pocket with an apologetic smile. 

“I’m sorry. What were you saying?” 

Buffy put her pen down with a sigh. It was Monday now, and the pair had remained in the library after school to get some homework done. Cyrus’ mind couldn’t stop wondering though, and whenever he thought about TJ he felt that sad ache begin to swell up in his chest all over again. It was cooler that day, probably because of the harsh winds that kept banging doors closed when someone let air inside. The sky wasn’t cloudless like it had been on Saturday either - in fact - Cyrus could barely see any blue looking out of the library window.

“Forgot about it,” the girl sighed after a moment, “there are more pressing matters.” 

Cyrus averted his gaze. “Like what?” 

“Like  _TJ,_ ” said Buffy, straight forward as she always was.

He sighed, knowing well that lying would be a fruitless, particularly when it came to Buffy. That girl could pick up on the slightest of expression changes.

“There’s nothing to say about him,” Cyrus shrugged, pretending to busy himself with note taking, “he doesn’t like me. It’s fine.  _I’m_  fine.” 

Buffy just scoffed though, turning in her chair to face the boy fully. “That’s just what he was telling Kira - you don’t know for sure.” 

Cyrus found himself shrugging again. “Seemed pretty real to me.”

“What about all those messages, then?”

Cyrus felt his face flush at that. Guilt washed over him like an ice bucket anytime he thought about those texts, and the fact that he never responded to them. He didn’t doubt that TJ was worried about him after all, he just doubted his ability to lie right the boy’s face. Or even over text. 

“He thinks I was mad because Kira suggested it in the first place,” he explained, leaning back against his chair, “not because...”

Buffy seemed to get the point because her face softened. She placed a hand on his shoulder. 

“Hey - we still don’t know for sure, okay? I think you should talk to him before you come to any conclusions.”

“It’s too late for that, the conclusions have been drawn,” Cyrus sighed, a smile ghosting over his lips at the exasperated look Buffy gave him.

She opened her mouth to respond, but a voice from behind them interrupted her.

“Hey, guys.”

Cyrus’ eyes widened comically, and he whirled around in his chair. 

“TJ,” he breathed out. 

Buffy was standing up in an instant, collecting her things and giving TJ a pat on the shoulder as he walked past. 

“I’ll let you two talk.”

Cyrus sighed again. He had  _not_  counted this in the slightest, but he supposed it would’ve been hard to postpone much longer. They  _did_  go to the same school, after all.

He glanced up at TJ again when the boy didn’t make to sit down, eyebrows raised. He looked nervous now, hands shoved in his pockets, and Cyrus felt another pang of guilt. 

_Why weren’t feelings a thing people could just turn off?_

“Do you think we could take this somewhere more...you know...”

Cyrus smiled slightly. “Private? Yeah, I guess so.”

He paused for a moment to scan the library, and his eyes landed on a bookshelf row right by the corner that people rarely visited. He packed up his things and left them in a neat pile, gesturing for TJ to follow him.

It was the corner of the library that the least amount of light seemed to reach, however, it was still relatively lit by the small window sitting high above eye level. Pale light was filtering in due to the overcast weather, and it made TJ’s face seem somewhat grey as the boy came to a halt in front of him. 

“You’ve been avoiding me.”

It wasn’t a question, although Cyrus desperately wanted it to be. It was clear that T.J. saw right through what he was doing, so there was no point in denying it. A part of him still wanted to.

“I’m sorry,” he settled on saying, voice soft, “I’ve just been...um...I don’t know. How’d things go with Kira?” 

TJ sighed, the hints of an exasperated smile at the corner of his lips. “Cyrus - I care about  _you_. Let’s not talk about Kira right now, okay?”

Cyrus swallowed thickly, slightly taken aback by the words. He gave a quick nod nonetheless, glancing nervously down at the ground.

“I’m...I’m sorry for running away. And for not texting you back. And for avoiding you today. I’ve been trying to get over something, and having you around makes it a bit hard...”

TJ’s eyebrows furrowed with confusion. “What have you been trying to get over?”

Cyrus averted his gaze to the ground, his hands fidgeting anxiously inside his pockets. 

“Um...”

_Well. It’s now or never._

“Okay, I have to tell you something. Promise you won’t interrupt until I’m done?”

TJ nodded, and Cyrus looked up again, gaze relatively steady despite his nerves. 

“I um...I...” he could already feel himself tearing up slightly, frustratingly enough.

“When I saw you at the park with Kira...and she um, she said those things-“ TJ visibly winced “I...I got upset, but not just because she said them.”

TJ looked confused again now, looking as though he was holding himself back from interrupting. Cyrus continued on, taking his hands out is his pocket when they began to shake.

“I was upset because I like you. And - before you say anything - it’s okay that you don’t like me back! I can get over it! But...for a few days, it just hurt a lot. I’m really sorry.” 

TJ’s face visibly softened at the confession. He took a small step forward. “Cyrus, I-“

“Please don’t say you’re sorry,” Cyrus pleaded, “it’s not your fault, it’s mine.”

The boy just shook his though, the beginnings of a smile appearing on his face. “Cyrus,” he paused, stepping right up to the boy and taking both of his hands, “I was lying to Kira. I like you too.”

Cyrus’ expression was stunned for a few long moments as he took the information in, but as soon as he had an amazed smile formed on his lips. “You do?”

“Of course,” TJ smiled, in that soft tone he had reserved specifically for the boy. “You’re amazing.”

Cyrus could definitely feel his heart melting now. He looked up bashfully and bit his lip, unsure of what to do next. 

He was currently  _holding hands_  with TJ Kippen, which something he had only ever dared dream about doing. 

“Can I um...can I kiss you?” TJ asked, eyes flitting down to Cyrus’ lips for a brief moment.

_Okay. Someone pinch him._

Cyrus could only bring himself to nod, glad that the other boy was initiating something so he didn’t have to. The only kiss he’d had in his life was with Iris, but he knew already that this one would be different. TJ nodded, breath slightly shaky as he leaned down. Cyrus stood up on his tip-toes, and before he knew it, their lips were connecting for a few moments. It wasn’t long, but at that moment, it was enough for them. 

In those few seconds alone, Cyrus could confidently say that kissing T.J. was drastically different from kissing Iris. It felt freeing, rather than confining, without the ever-present worry in the back of his head, nagging him about something be wrong.

TJ pulled him in for a hug after that and Cyrus happily obliged, resting his head against the boy’s chest. He felt a kiss being placed on his head, and _dammit, why did he have to blush so easily?_

Something hit him then that had a wide smile appearing on his lips. “Hey - I have something for you in my locker.”

The words were muffled slightly by TJ’s hoodie, but the boy seemed to understand them regardless because he drew back, smiling curiously. “Like what?” 

Cyrus pulled away fully and gave him a playful shrug. “Guess you’ll just have to come and see.”

The pair, after collecting Cyrus’ things from the table, left the library and headed towards his locker. There was a ‘friendly’ distance between them, although he swore TJ purposely brushed their hands together a few times.

After placing his books in his bag, he rummaged around his front pocket for a moment, letting out a triumphant ‘aha!’ when he felt the bracelet. 

Cyrus could feel his face reddening as he pulled it out, turning around to offer it to the boy. “I know it’s not much,” he rushed out, “but Andi convinced me I should make it for you. You obviously don’t have to wear it or anyth-"

“I love it,” TJ interrupted him, smiling brightly. “I’m wearing it every day.”

Cyrus bit his lip, fighting back a smile as he watched the boy slip it onto his wrist. 

“It’s gay,” said TJ, “just like me!” 

He glanced wearily around the corridor after that, the smile returning to his face when he was certain that no one else was there. 

Cyrus grinned and walked forward right into TJ’s arms, giving him another hug. 

_He was so gone._

**Author's Note:**

> Thank you for reading!
> 
> Kudos/comments are appreciated if you liked it <3


End file.
